home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / misc / baytrm10 / bayterm.doc < prev    next >
Encoding:
Text File  |  1994-12-23  |  23.5 KB  |  515 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.                                   BayTerm
  27.  
  28.                              Copyright(c) 1994
  29.  
  30.                           Don Lafontaine (VE2UFO)
  31.                   Packet      ve2ufo@ve2ike.#mtl.pq.can.noam
  32.                   Internet    lafont02@godzilla.cn.ca
  33.  
  34.                                     and
  35.  
  36.                            Ike Tamigian (VE2IKE)
  37.                   Packet      ve2ike@ve2ike.#mtl.pq.can.noam
  38.                   Internet    tamigian@godzilla.cn.ca
  39.  
  40.                             ALL RIGHTS RESERVED.
  41.  
  42.                              WELCOME TO BayTerm
  43.                          By Raymond Faguy (VE2SJA)
  44.  
  45.                Here  is  an  overview  of  why the BayTerm software was  
  46.       written, and how it works.
  47.                I got  into packet in 1993 with a "Baypack" and "Baycom"
  48.       software  and  fell in love with it. In early 1994,thinking I was
  49.       doing a  wonderful  thing, I  bought  a  TNC, a PK88 to be exact.
  50.       Don't get me wrong, this is a very nice machine but I was used to
  51.       Baycom, and liked the look and feel of it. But then again the TNC
  52.       does have some nice features.
  53.                So here I was, moping about the fact that I like my TNC,  
  54.       but  I  also  liked  my Baycom. Then, one day, Don says to me "Ok  
  55.       Ray,  lets  see  if  I  can  write  something that will cheer you  
  56.       up."  You  see, Don is a programmer, and never lets anyone forget  
  57.       it.
  58.                And BayTerm was born.
  59.  
  60. A special thanks to Raymond Faguy (VE2SJA/VE2CIH) and Alfio Ferrara (VE2FAF)
  61. for their relentless bug hunting and feature wish lists.  Also a special
  62. mention to Ike Tamigian (VE2IKE) for jumping aboard and helping out with the
  63. coding. Without Ike's help,  the KPC3 support would have been a long time
  64. down the road. Without their prodding, this program would be a pretty little
  65. box on the screen with letters in it.  THANKS GUYS!
  66.  
  67. I have one question,  does anybody have an MFJ TNC?  I'd like to support this
  68. one,  but I don't know the particulars concerning MFJ's host mode interface.
  69. Any help would surely be appreciated.  I think that would cover most MAJOR TNC
  70. manufacturers. Sorry,  the TINY-2 doesn't support host mode.
  71.  
  72. -[ Red in the face dept. ]-
  73.  
  74. Sorry folks,  but at this time,  there is no way to get to the PK-232/PK-88
  75. maildrop.  In a future release,  we'll address this problem.  For now, you
  76. can use a node to loop back to yourself and access your maildrop that way.
  77.  
  78. --------=> License <=--------------------------------------------------------
  79. BayTerm is not a "public domain" program.
  80.  
  81. Copyright (c) 1994 by Don Lafontaine (VE2UFO) and Ike Tamigian (VE2IKE)
  82. All rights reserved.
  83.  
  84. BayTerm is shareware. The unregistered version may be freely copied and
  85. distributed. The program and/or manual may not be modified in any way and it is
  86. not allowed to charge more than the price of a diskette for distribution.
  87.  
  88. You are hereby granted a limited license to use this software for evaluation
  89. purposes for a period of 30 days. If you intend to continue using this software
  90. after the 30 day evaluation period, you must make a registration payment of
  91. $20 in Canadian funds drawn from Canadian banks to:
  92.  
  93.             Don Lafontaine -or- Ike Tamigian
  94.             PO Box 352
  95.             Succ. Snowdon
  96.             Montreal PQ
  97.             Canada
  98.             H3X-3T6
  99.  
  100. --------=> Warranty <=-------------------------------------------------------
  101.  
  102. The authors provide absolutely no warranty, to the extent permitted by
  103. applicable law. Except when otherwise stated in writing, the authors and/or
  104. other parties provide this program "AS IS" without warranty of any kind, either
  105. expressed or implied, including, but not limited to, the implied warranties of
  106. merchantability and fitness for a particular purpose.  The entire risk as to
  107. the quality and performance of the program is with you. Should the program
  108. prove defective, you assume the cost of all necessary servicing, repair or
  109. correction.
  110.  
  111. In no event unless required by applicable law will the authors and/or any other
  112. party who may modify and/or redistribute this program be liable to you for
  113. damages, including any lost profits, lost monies, or other special, incidental
  114. or consequential damages arising out of the use or inability to use (including
  115. but not limited to loss of data or data being rendered inaccurate or losses
  116. sustained by third parties or a failure of the program to operate with any
  117. other programs) this program, even if you have been advised of the possibility
  118. of such damages, or for any claim by any other party.
  119.  
  120. --------=> System requirements <=---------------------------------------------
  121.  
  122. BayTerm will run under MS-DOS 3.x or higher on any IBM PC-compatible computer
  123. with at least 370KB of free memory. A harddisk is not required, but is nice
  124. to have. On slow systems, e.g. 8088/86 CPU, some functions may not work as
  125. expected or may not work at all.
  126.  
  127. BayTerm will automatically detect the type of video adapter in use. MDA, CGA,
  128. EGA, VGA and Hercules are supported. No attempt has been made to avoid screen
  129. flicker (snow) on CGAs.
  130.  
  131. The TNC must be set to communicate at 9600 baud (TNC to Computer).  ABAUD 9600.
  132.  
  133. --------=> REVISION HISTORY <=------------------------------------------------
  134.  
  135. ß = BETA
  136.  
  137. Version 1.0ß:
  138.  - First draft,  messy code,  fast hack.
  139.  - Added support for the KPC-3 and PK-232(MBX).
  140.  - Uses TCXL 5.5 for windowing. (This is to change)
  141.  - Uses a public domain async library (This is to change)
  142.  
  143. Version 1.2ß:
  144.  - Fixed some windowing bugs.
  145.  - Added callsign display to the session window.
  146.  
  147. Version 1.3ß:
  148.  - Fixed more windowing bugs.
  149.  
  150. Version 1.4ß:
  151.  - Removed KPC support for now. (To be worked on at a later date.)
  152.  - Upgraded the Window library to TCXL 6.02.
  153.  - Switched from Microsoft C 8.0c to Borland C++ 3.0
  154.  - Finished the window resizing functions
  155.  - Re-assigned function keys.
  156.  - Moved the windowing functions from the keyboard loop to the async loop.
  157.  - Now re-establishes connections on entry to the program.
  158.  - Fixed most colors for monochrome systems.
  159.  - Made Exploding windows optional (Faster without it,  but it is fancy :) )
  160.  - Added dump to file function (ALT-P).
  161.  - Began writing the .doc file.
  162.  
  163. Version 2.5ß:
  164.  - Added Multi-session support,  virtual windows.
  165.  - Removed window resizing code.  Added full screen monitor window.
  166.  - Added session activity flags.
  167.  - Modified dump to file function to allow for different sessions.
  168.  
  169. Version 3.0ß:
  170.  - Recolored the session flags to be a little more clear.
  171.  - Fixed screen clearing, on exiting the program.
  172.  - Added Session Status popup. (ALT-S)
  173.  
  174. Version 3.1ß:
  175.  - Added session conferencing. (ALT-L)
  176.  - Re-divided the source code into 3 files.
  177.  - Added /c command line parameter (E.G.: /cMYCALL) for conferencing.
  178.  - Fixed a minor bug (Minor??) in the file logging routine.
  179.  
  180. Version 3.2ß:
  181.  - Code handed off to Ike (VE2IKE) to add the KPC host mode support.
  182.  - Fixed tiny bug in input routine.
  183.  - Rewrote both the Connect and File Dump dialog boxes.
  184.  - Tweaked and tuned the code yet again.
  185.  
  186. --------=> REVISION HISTORY (Cont'd) <=---------------------------------------
  187.  
  188. Version 4.0ß:
  189.  - Async library thrown out in favor of Ike's comm code.
  190.  - Added routine to SERIOS.ASM to allow peeking into the comm buffer.
  191.  - Ike fixed my blunder in SERIOS.ASM.
  192.  - Nasty little bug squashed in SERIOS.ASM.
  193.  - Keyboard idle routine trashed.  Rewritten with kbhit() loop.
  194.  - TNC specific code identified and separated to aid with multi TNC support.
  195.  - Help screen no longer holds up everything.
  196.  - Added VIA support for Digipeaters.
  197.  - Added multiple language support.
  198.  
  199. Version 4.1ß:
  200.  - KPC3 code re-integrated
  201.  - Fixed a couple of nasty CR/LF problems with the KPC3 code.
  202.         Solution: Suppress addition of LF's,  and do it ourselves.
  203.         This is because the KPC3 doesn't add LF's in EVERY packet recv'd!
  204.  - PK232 and PK88 will now be set to terminal mode on exit.
  205.         On startup of the program,  it will be set to host mode.
  206.  - Disabled the CTRL-C,  CTRL-BREAK and CTRL-ALT-DEL.
  207.  - Disabled Conference Linking and File Dumping because of fatal bugs.
  208.  
  209. Version 4.11ß:
  210.  - Fixed faulty current session logic.
  211.  - Re-enabled Conference Linking and File Dumping.
  212.  - Fixed a small problem with session data not getting displayed on the
  213.         current_session.
  214.  - Fixed small problem in CTRL-C handler.
  215.  
  216. Version 4.2ß:
  217.  - Added Config file processing for TNC Initialization on entry and exit.
  218.        BayTerm.INI is used at the start, BayTerm.END at the end.
  219.  - Disabled Language support for now.
  220.  - Added /n (Disable TNC Initialization) to the command line.
  221.  - Fixed problem with Full screen monitor window.
  222.  - Added ability to link BayTerm conference nodes together.
  223.  
  224. Version 4.3ß:
  225.  - Fixed problem with Conference Loop detector.
  226.  - Changed the initialize_tnc function to accept english commands.
  227.  - Changed colors a little to help with the monochrome monitors.
  228.  - Added ALT-V.  Displays Version information.
  229.  - Fixed up host mode on entry.  It is now forced!
  230.  - Fixed up terminal mode on exit.
  231.  
  232. Version 4.4ß:
  233.  - Fixed problem with File Dump,  escape works now.
  234.  - Cursor now goes to a reasonable place on exit.
  235.  - Tentatively released shareware version (1 user).
  236.  - Fixed yet ANOTHER problem with the full-screen monitor window.
  237.  
  238. Version 1.0:
  239.  - Released to the general public as shareware.
  240.  
  241. Version 1.0 pl 1 ß:
  242.  - Fixed blunder with ALT-F5 and ALT-F1 processing.
  243.  - Added 'pause' function in send_file().
  244.  - Added wildcard processing in File Dump function.
  245.  - Added path processing,  users can execute BayTerm from anywhere.
  246.  - Added session window scrolling capability.
  247.  
  248. --------=> INSTALLATION <=----------------------------------------------------
  249.  
  250.         Installing BayTerm is easy!  Unzip the program into the directory you
  251. want BayTerm to reside in. E.G.:
  252.         cd\
  253.         md bayterm
  254.         cd bayterm
  255.         pkunzip a:\baytrm10.zip
  256.  
  257.         Now what you want to do is run BAYINST from the directory you just
  258. created. This will set up the batch file and initialization files needed to
  259. run BayTerm.  The batch file that is created will be called BT.BAT.  You can
  260. add this directory to your path so that you can run BayTerm from anywhere.
  261.  
  262. --------=> INTRODUCTION <=----------------------------------------------------
  263.  
  264.         Several local hams (including me) have expressed a wish to have a
  265. BAYCOM style terminal program that would work with their full-blown TNC's.
  266. This first version is an attempt to fill this need.  There are a few command
  267. line parameters,  here they are:
  268.  
  269. Parameter       Example         Description
  270. -------------------------------------------------------------------------------
  271. /PK88           /pk88           Disable HF support
  272. /PK232          /pk232          Enable PK-232 Support.
  273. /KPC3           /kpc3           Enable Kantronics KPC3 Support.
  274. /50             /50             Use 50 line mode (VGA only).
  275. /P<port>        /p2             Sets the COM port               (DEFAULT: 2)
  276.                                 See the section on COM ports.
  277. /I<irq>         /i3             Sets the COM port IRQ           (DEFAULT: 3)
  278.                                 See the section on COM ports.
  279. /D              /d              Enable direct screen writes.
  280.                                 Not needed with VGA systems.
  281.                                 Causes snow on CGA screens.
  282. /X              /x              Enable Exploding Windows
  283.                                 All windows will explode onto the screen.
  284.                                 Fancy special effect,  that all.
  285. /A              /a              Turn alarms off. (ALT-A will turn them back on)
  286. /C              /cVE2UFO        Sets your callsign.  Used in conferencing.
  287. /S              /s25            Session-monitor dividing line.
  288.                                 Use this parameter to change the default
  289.                                 session and monitor sizes.  If you want to
  290.                                 be in 50 line mode,  you must specify the /50
  291.                                 parameter first.
  292.  
  293. --------=> SPECIFIC REQUIREMENTS FOR TNC'S <=---------------------------------
  294.  
  295.         In order for this program to work properly,  certain TNC paramaters
  296. have to be set.
  297.  
  298.        ** Above all,  the TNC must be set to 9600 baud. ABAUD 9600. **
  299.  
  300. These can be added into the BayTerm.INI file.
  301.  
  302. For AEA type TNC's:
  303.  
  304.         1 - Constamp parameter should be set to OFF     (Constamp off)
  305.         2 - DCDCONN should be set ON (PK-232).          (Dcdconn on)
  306.  
  307.         These are optional,  but the program was built with these in mind:
  308.  
  309.         4 - Monitor all packets.                        (Monitor 5 or 6)
  310.         5 - Monitor all packets while connected.        (Mcon 5 or 6)
  311.  
  312. For Kantronics type TNC's:
  313.         1 - Constamp parameter should be set to OFF     (Cstamp off)
  314.  
  315.         These are optional,  but the program was built with these in mind:
  316.  
  317.         4 - Monitor all packets.                        (Mcom on)
  318.         5 - Monitor all packets while connected.        (Mcon on)
  319.  
  320. --------=> USING THE PROGRAM <=-----------------------------------------------
  321.  
  322.         There are two TNC initialization files you can use to set up your
  323. TNC at the start and end of the program.  BayTerm.INI is read at the
  324. beginning of the program,  this file will contain all the commands necessary
  325. to set the TNC up for proper operation with BayTerm.  Add as many lines as
  326. you wish. Comments may be included,  and must start with a '#' in column 0.
  327.  
  328.         You can also set the TNC parameters on exiting the program,  this is
  329. done by adding the commands you need to BayTerm.END.  This is handy when you
  330. use more than one program with your TNC.
  331.  
  332. Now you're ready to run BayTerm,  go for it!  This is the main terminal screen.
  333.  
  334. Status -->      Alt-F1=Help [ ABCDEFGHIJ ]   CMD V1200 October 23, 1994 15:21:03
  335.                +-[ Input ]-----------------------------------------------------+
  336.                |                                                               |
  337. Input -->      |                                                               |
  338.                |                                                               |
  339.                +---------------------------------------------------------------+
  340.                +-[ Session 'A' ]-----------------------------------------------+
  341.                |                                                               |
  342.                |                                                               |
  343.                |                                                               |
  344.                |                                                               |
  345.                |                                                               |
  346. Session        |                                                               |
  347. Output  -->    |                                                               |
  348.                |                                                               |
  349.                |                                                               |
  350.                |                                                               |
  351.                |                                                               |
  352.                |                                                               |
  353.                |                                                               |
  354.                +---------------------------------------------------------------+
  355.                +-[ Monitor ]---------------------------------------------------+
  356.                |                                                               |
  357.                |                                                               |
  358. Monitored      |                                                               |
  359. Packets  -->   |                                                               |
  360.                |                                                               |
  361.                |                                                               |
  362.                +---------------------------------------------------------------+
  363.  
  364. --------=> ESTABLISHING A CONNECTION <=---------------------------------------
  365.  
  366.         To connect to a station,  hit ALT-F3 from an inactive session.
  367. You'll see a window asking for a callsign,  type the callsign you want, as well
  368. as any VIA's you need, and hit enter.  The TNC at this point has control over
  369. the actual connection.
  370.         After the connection is established,  you'll hear a short beep (If
  371. sound is active) and a window will pop up confirming the connection.  Check
  372. the callsign, it could be someone connecting to you in another session window.
  373. The status line will reflect session statuses.
  374.  
  375. White                   Inactive session.
  376. Bright green            Active session.
  377. Flashing Bright Red     New data has arrived (Or new connection).
  378.  
  379.         Anything that you type at this point will at first be displayed in the
  380. Input area. After you hit enter,  it will be copied into the Session area.
  381. You can scroll through the active session window by using the UP and DOWN arrow
  382. keys.  The scroll bar at the right of the session window will reflect your
  383. current position in the (virtual) window. After you're done,  if you can log
  384. off from the system via a menu,  do so. In the case of a keyboard to keyboard
  385. connection,  or a system that has stopped responding to you,  hit ALT-F4.  This
  386. will terminate the session from your end.  Keep in mind it is always best,
  387. where possible,  to terminate a session gracefully.  That is,  say Bye..
  388.  
  389. Hitting ALT-F1 at any point will bring up this help window:
  390.  
  391.          +-[ Help ]-----------------------------------------------+
  392.          |                                                        |
  393.          | F1-F10       Session 1 to 10.                          |
  394.          | ALT-F1       This help display.                        |
  395.          | ALT-F3       Connect to a station                      |
  396.          | ALT-F4       Hard Disconnect                           |
  397.          | ALT-F5       Full screen monitor mode. (Toggle)        |
  398.          | ALT-F7       Change packet baud                        |
  399.          | ALT-F8       Toggle HF/VHF (PK-232)                    |
  400.          | ALT-F10      Exit BayTerm                              |
  401.          | ALT-A        Toggle Sound                              |
  402.          | ALT-C        Clear session window                      |
  403.          | ALT-P        Toggle session filing.                    |
  404.          | PG-DN        Same as ALT-P                             |
  405.          | ALT-S        List status of all sessions.              |
  406.          | ALT-K        Toggle Command/Converse mode              |
  407.          | ALT-L        Link sessions                             |
  408.          | ALT-V        Display Version                           |
  409.          |                                                        |
  410.          |            [ Press any key to continue ]               |
  411.          +--------------------------------------------------------+
  412.  
  413. --------=> SPECIAL KEYS <=----------------------------------------------------
  414.  
  415.         There are a few special keys you can use while in the main terminal
  416. screen.  Note that the shareware version does not allow you to type in any
  417. session other than session 'A'.
  418.  
  419.         F1 to F10
  420.                         This will allow you to switch from one session to
  421.                         another.
  422.         ALT-F1
  423.                         This brings up the help screen. (Shown above)
  424.         ALT-F3
  425.                         Connect to a station.  This brings up a form asking
  426.                         you which station you would like to connect to.
  427.  
  428.                             +-[ Connect Request ]----------------+
  429.                             |                                    |
  430.                             |   Call: ▓▓▓▓▓▓▓▓▓▓                 |
  431.                             |   Vias: ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓  |
  432.                             |                                    |
  433.                             +------------------------------------+
  434.  
  435.                         Simply type in the callsign you want to connect to,
  436.                         including the SSID. E.G.: VE2CIH-1
  437.         ALT-F4
  438.                         Hard disconnect.  This is a nasty way of disconnecting
  439.                         from another station,  but it's usefull sometimes.
  440.         ALT-F7
  441.                         Change packet baud rate.  If you are using a TNC with
  442.                         a different baud rate than the default 1200 baud, use
  443.                         this key to get to it. It will cycle between the
  444.                         different speeds.  It will be displayed on the status
  445.                         line,  at the top of the screen.
  446.         ALT-F8
  447.                         If you are using a multi-mode TNC (PK-232), use this
  448.                         key to switch between VHF and HF operation.
  449.         ALT-F10
  450.                         Use this key to exit the program.  All connections will
  451.                         remain active,  so disconnect first if you want them
  452.                         closed.  You may also use ALT-X to exit.
  453.         ALT-A
  454.                         Turns sound on or off.
  455.         ALT-C
  456.                         Clears the active session window.
  457.         ALT-P
  458.                         Log session output to a file.  This will bring up a
  459.                         form asking you what file you want to log output to.
  460.                         If you want to use the printer,  type 'PRN'.
  461.  
  462.                              +-[ Dump to File ]--+
  463.                              |                   |
  464.                              | File: ▓▓▓▓▓▓▓▓▓▓▓▓|
  465.                              +-------------------+
  466.  
  467.         ALT-K
  468.                         Toggles between command and converse mode, as reflected
  469.                         by the status line.  If you are not connected to
  470.                         anyone,  this will allow you to send UNPROTO packets.
  471.  
  472. --------=> SPECIAL KEYS (Cont'd) <=-------------------------------------------
  473.  
  474.         ALT-S
  475.                         This will display all the session statuses.
  476.         ALT-L
  477.                         This will display all the sessions and allow you to
  478.                         link different sessions together.
  479.                         All packets from a conferencee will be sent to the
  480.                         others automagically.  Everything you type on a linked
  481.                         session will include your callsign if you used the
  482.                         /c command line parameter,  otherwise NOCALL is
  483.                         displayed.  (*DISABLED IN THE SHAREWARE VERSION*)
  484.  
  485. --------=> COM PORTS <=-------------------------------------------------------
  486.  
  487. A few notes about COM port setups.  The default BIOS setup for com ports is:
  488.  
  489. PORT    IRQ     BASE ADDRESS
  490. ----------------------------
  491. COM1    4       3f8
  492. COM2    3       2f8
  493. COM3    4       3e8
  494. COM4    3       2e8
  495.  
  496. As you can see,  there would be an interrupt (IRQ) conflict with ports 1 and 3,
  497. as well as ports 2 and 4.  Normally this is OK,  but if you wanted to use these
  498. pairs at the same time,  it would not work. One reason you would want to use
  499. the /I parameter is when you have 3 or more COM ports on your computer.  In my
  500. setup, I have 3 ports:
  501.  
  502. PORT    IRQ     BASE ADDRESS
  503. ----------------------------
  504. COM1    4       3F8
  505. COM2    3       2F8
  506. COM3    5       3E8
  507.  
  508. Therefore, because my COM3 port is non-standard,  I would use this command
  509. line:
  510.  
  511.         BayTerm /p3 /i5
  512.  
  513. This would allow me to use all my ports at once.
  514.  
  515.